package io.jt808.proto.cmd;

import io.norland.buffer.AutoBuffer;
import io.norland.annotations.Proto;
import io.norland.proto.IProto;
import lombok.Data;

/**
 * 临时位置跟踪控制
 */
@Proto("8202")
@Data
public class JT8202 implements IProto {
    /**
     * 时间间隔,单位为秒（s），0则停止跟踪。停止跟踪无需带后继字段
     */

    private int timeInterval;
    /**
     * 位置跟踪有效期,单位为秒（s），终端在接收到位置跟踪控制消息后，在有效期截止时间之前，依据消息中的时间间隔发送位置汇报
     */
    private long trackExpire;

    public final byte[] writeToBytes() {
        AutoBuffer buff = new AutoBuffer();

        buff.writeShort(timeInterval);
        buff.writeInt(trackExpire);

        return buff.array();
    }

    public final void readFromBuf(AutoBuffer buff) {
        timeInterval = buff.readUnsignedShort();
        trackExpire = buff.readUnsignedInt();
    }
}